Many physical network servers are designed to act as virtual servers. A virtual server is one that hosts a number of virtual machines. A virtual machine is a separate isolated guest operating system installation that operates within the virtual server operating system. Virtualization of the guest operating system may be done through either hardware virtualization, software emulation, or sometimes a combination of both. Computing entities that interact with a virtual machine do so as if the virtual machine were a physical computing system.
There are many advantages to using virtual machines. Most notably, a server system can run multiple virtual systems, each operating within isolation of each other. The virtual server can also provide different instruction set architectures to different virtual machines. Additionally, a virtual system may be moved to different physical servers, thus allowing greater mobility of a system.
In many cases, an entity that controls a virtual server system may be different than the entity or entities that control the multiple virtual systems that run on the virtual server. For example, the owner of a virtual system may enter into a business arrangement that allows the virtual system to run on the virtual server. This can often result in forced sharing of sensitive information. Specifically, the owner of the virtual system has to have access to the virtual system in order to allow that virtual system to communicate over a network. Moreover, the administrative effort that is needed to configure the virtual systems for operation over the network may be relatively burdensome.
Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.